.home-calendar {
  position: relative;
  background: linear-gradient(to right, #48B2FE, #06EDFE);
  width: 350px;
  height: 300px;
  border-radius: 10px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  flex-shrink: 0;

  // 导航按钮
  .calendar-nav-button {
    position: absolute;
    width: 35px;
    height: 35px;
    border: 1px solid #F5F7FB;
    top: 52px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    color: #3498DB;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 5px;

    &:hover {
      background: rgba(255, 255, 255, 0.8);
    }

    &.calendar-nav-prev {
      left: 15px;
    }

    &.calendar-nav-next {
      right: 15px;
    }

    .calendar-nav-icon {
      width: 10px;
      height: 10px;
    }
  }

  // 日历头部
  .calendar-header {
    height: 55px;

    .calendar-time-list {
      display: flex;
      flex-direction: column;
      align-items: center;
      padding: 0;
      margin: 0;
      height: 100%;

      .calendar-time {
        display: block;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 700;
        color: white;
        font-size: 23px;
      }

      .calendar-date {
        display: block;
        height: 10px;
        color: white;
        font-weight: 450;
      }
    }
  }

  // 日历主体
  .calendar-body {
    background: white;
    height: 247px;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;

    .calendar-content {
      display: flex;
      flex-direction: column;
      height: 100%;
      align-items: center;
      margin: 0;
      padding: 0;

      .calendar-month {
        display: block;
        background: #EEF6FC;
        border-radius: 20px;
        color: #2C3E50;
        font-weight: 500;
        margin-top: 5px;
        width: 85px;
        border: none;
        height: 25px;
        text-align: center;
        line-height: 25px;
      }

      .calendar-table-container {
        display: block;
        flex-grow: 1;
        margin-top: -10px;
        width: 95%;
        height: 100%;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 10px;

        .calendar-table {
          width: 100%;
          margin-top: 20px;

          .calendar-weekdays {
            color: #3498DB;
            font-size: 11px;

            .calendar-weekday {
              font-size: 11px;
              font-weight: 500;
              padding: 4px;
              text-align: center;
              width: calc(100% / 7);
            }
          }

          .calendar-days {
            color: #747C8B;
            font-size: 12px;

            .calendar-day {
              padding: 4px;
              text-align: center;
              position: relative;

              .calendar-day-number {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                width: 20px;
                height: 20px;
                border-radius: 50%;
                transition: all 0.3s ease;

                &.calendar-day-today {
                  background: linear-gradient(to bottom right, #59BCD8, #32DED8);
                  color: white;
                }
              }
            }

            .calendar-day-empty {
              padding: 4px;
            }
          }
        }
      }
    }
  }
} 